data generation pipeline